In customer contact systems or use centers, calls incoming to a call center are answered and handled by a plurality of agents. The system automatically distributes and connects incoming calls to whatever agents are suited to handling the calls and are free, i.e., not handling other calls at the moment. As used herein, a “call” or “contact” refers to any mode or type of contact between two entities, including without limitation voice calls, VoIP, text-chat, e-mail, fax, electronic documents, webforms, voice messages, and video calls, to name but a few.
A system frequently becomes overloaded when no suitable agents are available to handle calls when the calls come in. The calls are placed in different queues based upon some preestablished criteria and are placed in each queue in the order of their arrival and/or priority. Each call in each queue is then delivered to an agent in a grouping of agents (corresponding to the queue containing the call) for servicing based on the position of the call in the queue.
Information on how long either an individual or an average caller has to wait to have his or her call serviced is important information for the service provider. It is often the most important factor for deciding how to treat the call and how to staff agent groups to meet selected contact center service level and thus serves as a crucial tool for customizing customer service. Service levels measure the degree to which a corresponding contact center goal is being attained or not attained.
Numerous techniques have been developed over time to estimate a call's wait-time in queue. One estimation technique uses the average wait time to answer calls that have been placed in queue. Another estimation technique uses the wait time of the oldest call in the queue. Yet another estimation technique uses, as the wait-time estimate, the number of calls in the queue multiplied by the average time it takes an agent to handle a call, divided by the number of agents available to handle the calls. Yet another estimation technique is known as weighted advanced time (WAT), which is an exponential moving average based on the Average Advanced Time (AAT) of each individual call in queue. This approach is described in U.S. Pat. No. 5,506,898, which is incorporated herein by this reference.
These predictive techniques have been optimized for real-time contacts but can be inaccurate when applied to non-real-time contacts. As used herein, real-time contacts refer to contacts in which the contacting entity or customer is present during the waiting (or queuing) period and can choose to abandon or disconnect the contact if the call is not serviced within an acceptable period. Common examples include voice calls, VoIP, text-chat, video calls, and the like. Non-real-time contacts refer to contacts in which the contacting entity or customer is unable to abandon or disconnect the contact. Common examples include e-mail, fax, electronic or paper documents, webform submissions, voice messages, and the like. For example, non-real-time contacts may stay in queue overnight or over a weekend or holiday when the contact center is unstaffed. When the contact is serviced, the time to advance one position in the queue for the contact may be exceptionally large. The above-predictive techniques may be skewed by such excessive advance times and cause work distribution to be handled inefficiently and/or ineffectively.
Copending U.S. application Ser. No. 09/641,403, filed Aug. 17, 2000, entitled “Wait Time Prediction Arrangement for Non-Real-Time Customer Contacts”, discloses a technique to effect service time prediction for non-real-time contacts. This technique has been incorporated in Avaya Inc.'s Interaction Center™ product which has been available commercially for over one year. When a contact is enqueued following the occurrence of a selected event, namely the queue has no working agents (e.g., the switching center (or call or contact center) is unstaffed); the queue is empty (e.g., the contact center has idle working agents); the contact center (or call or switching center) is not operational (e.g., the contact center is shut down or is otherwise out of service); a working agent of the contact center elects not to service the item (e.g., the rules governing the servicing of items permits the next available working agent to defer or decline servicing the item); and/or a system clock is changed (such as by an administrator or otherwise) that is accessed by the contact center for timing information, the ensuing time interval, advance time, or other type of timing information associated with the first item is excluded from an estimation of a wait time (e.g., WAT, etc.) associated with the queue. The wait time can be determined using any suitable techniques, including those described above.
Although this algorithm represents a substantial step forward from prior contact center algorithms for predicting wait time for non-real-time contacts, it can be unable to provide an accurate estimate of wait time when the wait-time period crosses one or more unstaffed time intervals. A wait time predictor is needed that can accurately predict when an item of work will be serviced, even when that work may remain in queue during unstaffed periods such as holidays and weekends.